使用Vivado将包含Xilinx IP的用户模块封装成网表文件(也适用不包含Xilinx IP的用户模块)... |
您所在的位置:网站首页 › hack 编程 › 使用Vivado将包含Xilinx IP的用户模块封装成网表文件(也适用不包含Xilinx IP的用户模块)... |
关注、星标公众号,精彩内容每日送达
原文链接:https://blog.csdn.net/weixin_44384867/article/details/86591338 版权声明:本文为CSDN博主「AI浪潮下FPGA从业者」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。 在Vivado TCL命令窗口中可以通过调用write_edif命令将用户自定义模块封装成.edf网表文件(类似ISE里的.ngc文件),但按照官方给出的参考用法生成的网表文件对自定义模块有种种限制,即待封装的模块不能含有Xilinx IP(少部分IP可以包含,如RAM IP、FIFO IP等),如DSP IP、MIG IP等,否则在编译时将报错,提示有未定义的黑盒。那么如何将包含XIlinx IP的用户模块封装成网表文件,下面将给出详细步骤 1. 将待封装模块设置为top层如下图所示,待封装模块为abc,则选中abc后右键,选择“Set as Top”, 2. I/O Buffers设置设置Settings–>综合 synthesis–>选项options下拉至最后一项:More Options,将其值设置为: -mode out_of_context
3. 综合运行综合synthesis,完成综合后,打开综合设计open synthesized design 4. 生成仅包含IO端口信息的empty module打开综合设计open synthesized design后,在TCL命令窗口执行如下命令:2017.4之前版本: write_verilog -mode port F:/FPGA/abc_stub.v 2018.1之后版本: write_verilog -mode synth_stub F:/FPGA/abc_stub.v 其中F:/FPGA/替换为要存放的路径,如未指明路径,则将存放到工程文件所在路径下。 5. 生成edf文件重头戏来了,分两条: 若不含Xilinx IP则可通过如下命令生成edf文件:write_edif F:/FPGA/abc.edf 若含Xilinx IP则需通过如下命令生成edf文件:write_edif -security_mode all F:/FPGA/abc.edf 6. 新工程中网表文件调用将上述生成的abc_stub.v和abc.edf添加到新工程中即可。 7. 带Xilinx IP的另外一种网表封装方式(不推荐)上述步骤3后,在tcl命令窗口中执行如下命令: write_verilog -force abc_stub.v 该命令会将待封装模块中所有源码、IP都写入一个文件中,然后在新工程中仅需添加该文件即可。 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |